import { config } from '@/config';
import { valiGreaterThanZeroInteger } from '@/validates/validate/validate';

// 获取默认分页参数
const { page } = config;

export const pageWrapper = (pageSize: number, pageNumber: number) => {
  //判断pageNumber
  if (!pageNumber) {
    pageNumber = page.pageNumber;
  } else if (!valiGreaterThanZeroInteger(pageNumber)) {
    throw new Error('pageNumber 需要是大于0的正整数');
  } else {
    pageNumber = Number(pageNumber);
  }
  // 判断pageSize是否存在
  if (!pageSize) {
    // 不存在等于配置里的
    pageSize = page.pageSize;
  } else {
    // 存在的情况下，在判断是否满足条件，不满足抛出，满足转成数字
    if (!valiGreaterThanZeroInteger(pageSize)) {
      throw new Error('pageSize 需要是大于0的正整数');
    } else {
      pageSize = Number(pageSize);
    }
  }

  return { pageNumber, pageSize };
};
